import {CommonModule} from '@angular/common';
import {SharedComponentModule} from '../../shared/components/component.module';
import {WindowService} from '../../services/system/window.service';
import {LayoutComponent} from './layout/layout.component';
import {ExampleComponent} from './example/example.component';
import {ExampleFormComponent} from './example/form/example-form.component';
import {MessageService} from '../../services/system/message.service';
import {OtherComponent} from './example/other/other.component';
import {RequestService} from '../../services/system/request.service';
import {AppGlobalErrorHandler} from '../../services/system/exception.handler';
import {ConfirmContentComponent} from './confirm/confirm.content.component';
import {UserComponent} from './user/user.component';
import {UserFormComponent} from './user/form/user.form.component';
import {RoleComponent} from './role/role.component';
import {RoleFormComponent} from './role/form/role.form.component';
import {MenuComponent} from './menu/menu.component';
import {MenuFormComponent} from './menu/menuForm/menu.form.component';
import {ActionFormComponent} from './menu/actionForm/action.form.component';
import {DataPerComponent} from './datapermission/data.per.component';
import {DataPerFormComponent} from './datapermission/form/data.per.form.component';
import {DictionaryComponent} from './dictionary/dictionary.component';
import {DictionaryFormComponent} from './dictionary/form/dictionary.form.component';
import {ChildFormComponent} from './dictionary/child/child.form.component';
import {InitDataService} from '../../services/system/init.data.service';
import {ProjectComponent} from './project/project.component';
import {ProjectFormComponent} from './project/form/project-form.component';
import {ProjectUserComponent} from './projectuser/project.user.component';
import {ProjectUserFormComponent} from './projectuser/form/project.user.form.component';
import {UpdateUserFormComponent} from './projectuser/updateForm/update.user.form.component';
import {PermissionService} from '../../services/system/permission.service';
import {CommonService} from '../../services/system/common.service';
import {LoginComponent} from './login/login.component';
import {HeaderComponent} from './layout/header/header';
import {CacheDataService} from '../../services/system/cache.data.service';
import {LogComponent} from './monitor/log/log.component';
import {MonitorComponent} from './monitor/monitor.component';
import {VersionFormComponent} from './monitor/versionform/version-form.component';
import {ActiveUserFromComponent} from './monitor/activeuser/activeuser-from-component';
import {UserLevelFormComponent} from './userlevel/form/user-level-form.component';
import {UserLevelComponent} from './userlevel/user-level-component';
import {AreaComponent} from './area/area-component';
import {NzLayoutModule} from 'ng-zorro-antd/layout';
import {NgModule} from '@angular/core';
import {NgZorroAntdModule} from '../../ng-zorro-antd.module';
import {RouterModule} from '@angular/router';
import {NzIconModule} from 'ng-zorro-antd/icon';
import {NzMenuModule} from 'ng-zorro-antd/menu';
import {NgxChartsModule} from '@swimlane/ngx-charts';
import {FormsModule, ReactiveFormsModule} from '@angular/forms';


@NgModule({
  declarations: [
    LoginComponent,
    LayoutComponent,
    HeaderComponent,
    ExampleComponent,
    ExampleFormComponent,
    ConfirmContentComponent,
    UserComponent,
    UserLevelComponent,
    UserLevelFormComponent,
    UserFormComponent,
    ActiveUserFromComponent,
    LogComponent,
    MonitorComponent,
    VersionFormComponent,
    RoleComponent,
    RoleFormComponent,
    MenuFormComponent,
    MenuComponent,
    ActionFormComponent,
    DataPerFormComponent,
    DataPerComponent,
    DictionaryComponent,
    DictionaryFormComponent,
    ChildFormComponent,
    ProjectComponent,
    ProjectFormComponent,
    ProjectUserComponent,
    ProjectUserFormComponent,
    UpdateUserFormComponent,
    AreaComponent,
    OtherComponent
  ],
  entryComponents: [],
  providers: [
    WindowService,
    InitDataService,
    CacheDataService,
    MessageService,
    RequestService,
    CommonService,
    PermissionService,
    AppGlobalErrorHandler
  ],
  imports: [
    CommonModule,
    NzLayoutModule,
    NgZorroAntdModule,
    SharedComponentModule,
    NzIconModule,
    NzMenuModule,
    RouterModule,
    NgxChartsModule,
    FormsModule,
    ReactiveFormsModule
  ]
})
export class SystemModule {

  constructor() {
  }

}
